const fs = require("fs");
const dataMap = [
  { key: "zh", value: "中文" },
  { key: "common.test", value: "测试" },
  { key: "common.label.action", value: "操作" },
  { key: "common.label.id", value: "序号" },
  { key: "common.label.obj.name", value: "姓名" },
  { key: "common.label.obj.sex", value: "性别" },
  { key: "en", value: "英语" },
];

const obj = dataMap.reduce((acc, { key, value }) => {
  const keys = key.split(".");
  keys.reduce((nestedAcc, k, index) => {
    // 如果是最后一个键，设置值
    if (index === keys.length - 1) {
      nestedAcc[k] = `${value}正则匹配JS替换 // ${value}`;
    } else {
      // 如果当前键不存在，创建一个空对象
      if (!nestedAcc[k]) {
        nestedAcc[k] = {};
      }
    }
    return nestedAcc[k]; // 返回当前键的嵌套对象
  }, acc);
  return acc; // 返回累积的对象
}, {});

// console.log(obj);

const jsonString = JSON.stringify(obj, null, 2);
const jsonStringNote = jsonString.replace(/正则匹配JS替换/g, '",');
const outputPath = "data.js";
fs.writeFile(outputPath, `export default ${jsonStringNote}`, (err) => {
  if (err) {
    console.error("保存报错了=》", err);
    return;
  }
  console.log("保存成功路径=》 ", outputPath);
});

// worksheet.columns.forEach((column) => {
//   column.eachCell({ includeEmpty: true }, (cell, data) => {
//     cell.font = { color: { argb: "FFFF0000" } };
//     cell.alignment = {  wrapText: false };
//   });
// });
